A unique local address (ULA) is an IPv6 address in the block fc00::/7, defined in RFC 4193. It is the IPv6 counterpart of the IPv4 private address. Unique local addresses are available for use in private networks, e.g. inside a single site or organization, or spanning a limited number of sites or organizations. They are not routable in the global IPv6 Internet.
Contents |
In 1995, RFC 1884 reserved the block fec0::/10 for site-local addresses, that could be used within a "site" for private IPv6 networks. However, insufficient definition of the term site lead to confusion over the resulting routing rules. RFC 3879 (September 2004) deprecated this address range, and postulated solutions to its problems. In October 2005, RFC 4193 was published, reserving the address block fc00::/7 for use in private IPv6 networks, and defining the associated term unique local addresses.
The address block fc00::/7 is divided into two /8 groups:
As an example, a routing prefix in the fd00::/8 range would be constructed by appending the example 40-bit (hexadecimal) string fedcba9876 to the fd00::/8 prefix. This forms the 48-bit routing prefix fdfe:dcba:9876::/48. Using this prefix, 65536 subnets of size /64 are available for use in the private network: fdfe:dcba:9876::/64 to fdfe:dcba:9876:ffff::/64.
It should be noted that, as the 40-bit string from this example was (obviously) not randomly chosen, the above is in fact not a validly generated ULA routing prefix according to the standard. The standard requires that the 40-bit string be (pseudo-)randomly generated, e.g. by using the algorithm specified in the standard. This is required in order to minimize the risk of address collisions.
Prefixes in the fd00::/8 range have similar properties as those of the IPv4 private address ranges:
As fd00::/8 ULAs are not meant to be routed outside their administrative domain (site or organization), administrators of interconnecting networks normally do not need to worry about the uniqueness of ULA prefixes. However, if networks require routing ULAs between each other in the event of a merger, for example, the risk of address collision is extremely small if the RFC 4193 selection algorithm was used.
Attempts have been made to create registration databases for ULA prefixes to reduce the risk of duplicate prefixes.[4]
For the fc00:/8 range, different design decisions have been proposed,[1][3] trading the non-uniqueness for the requirement that the range be managed by a central allocation authority. However, such attempts at standardizing this range have not resulted in a Request for Comments.[1][2][3]